<template>
  <div class="order-right">
    <div class="order-content">
      <div class="title">
        <h3>我的订单</h3>
      </div>
      <div class="chosetype">
        <table>
          <thead>
            <tr>
              <th width="10%" style="text-align: center">商品</th>
              <th width="40%" style="text-align: center">商品详情</th>
              <th width="10%" style="text-align: center">状态</th>
              <th width="16%" style="text-align: center">下单时间</th>
              <th width="8%" style="text-align: center">金额</th>
              <th width="10%" style="text-align: center">取消</th>
            </tr>
          </thead>
        </table>
      </div>
      <div class="orders">
        <table class="order-item">
          <thead>
            <tr>
              <th colspan="5">
                <span class="ordertitle"
                  >订单
                  <span class="pull-right delete"
                    ><img src="../images/delete.png" /></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr v-for="order in orderList" :key="order.orderId">
              <td width="50%">
                <div class="typographic">
                  <img
                    :src="order.wares.pictureList[0]"
                    style="height: 70px; width: 70px"
                  />
                  <a class="service"> {{ order.wares.waresName }}</a>

                  <span>x{{ order.waresNumber }}</span>
                  <a class="block-text">{{ order.wares.waresDetail }}</a>
                </div>
              </td>
              <td width="10%" class="center">{{ waresState(order) }}</td>
              <td width="16%" class="center">{{ order.orderTime }}</td>
              <td width="8%" class="center">
                <ul class="unstyled">
                  <li>
                    {{ order.wares.waresPrice * order.waresNumber }}元
                  </li>
                </ul>
              </td>
              <td width="10%" class="center">
                <a class="btn" @click="deleteOrderById(order)">取消订单</a>
              </td>
            </tr>
          </tbody>
        </table>
      </div>
      <Pagination
        v-show="total > 0"
        :total="total"
        :page.sync="page"
        :limit.sync="limit"
        @pagination="getData()"
      />
    </div>
  </div>
</template>

<script>
import { mapState } from "vuex";
export default {
  name: "myOrder",

  data() {
    return {
      page: 1, //第几页
      limit: 5, //每页个数
    };
  },

  mounted() {
    this.getData();
  },
  computed: {
    ...mapState({
      orderList: (state) => state.center.orderList.ordersList,
      total: (state) => state.center.orderList.total,
      buyerName: (state) => state.user.buyerInfo.buyerName,
    }),
  },
  methods: {
    getData() {
      this.$store.dispatch("getOrderList", {
        page: this.page,
        limit: this.limit,
      });
    },
    //正常显示订单状态
    waresState(order) {
      if (order.orderState == 1) {
        return "客户下单";
      } else if (order.orderState == 2) {
        return "商家确认";
      } else if (order.orderState == 3){
        return "备货完成";
      } else if (order.orderState == 4){
        return "开始发货";
      } else{
        return "交易完成";
      }
    },
    //取消订单
    async deleteOrderById(order) {
      if (order.orderState <= 3) {
        try {
          await this.$store.dispatch("deleteOrder", order.orderId);
          this.getData();
        } catch (error) {
          alert(error.message);
        }
      }
    },
  },
};
</script>

<style lang="less" scoped>
.order-right {
  float: right;
  width: 83.33%;

  //订单部分
  .order-content {
    margin: 0 20px;
    color: #666;

    //标题
    .title {
      margin-bottom: 22px;
      border: 1px solid #ddd;

      h3 {
        padding: 12px 10px;
        font-size: 15px;
        background-color: #f1f1f1;
      }
    }

    //表头
    .chosetype {
      margin-bottom: 15px;
      color: #666;

      table {
        border: 1px solid #e6e6e6;
        border-collapse: separate;
        border-radius: 2px;
        width: 100%;
        max-width: 100%;
        border-spacing: 0;

        th {
          padding: 6px 8px;
          color: #666;
          font-weight: 700;
          vertical-align: bottom;
          background-color: #f4f4f4;
          line-height: 18px;
          border-bottom: 1px solid #e6e6e6;
          font-size: 12px;
          text-align: left;
        }
      }
    }

    // 表单内容
    .orders {
      font-size: 12px;

      a {
        &:hover {
          color: #4cb9fc;
        }
      }

      table {
        border: 1px solid #e6e6e6;
        border-collapse: collapse;
        border-radius: 2px;
        width: 100%;
        margin-bottom: 18px;
        max-width: 100%;

        th {
          padding: 6px 8px;
          line-height: 18px;
          text-align: left;
          vertical-align: bottom;
          background-color: #f4f4f4;
          font-size: 12px;
          color: #666;

          .pull-right {
            float: right;
            cursor: pointer;

            img {
              margin-right: 10px;
              vertical-align: middle;
            }
          }
        }

        td {
          font-size: 12px;
          color: #666;
          padding: 6px 8px;
          line-height: 18px;
          text-align: left;
          vertical-align: middle;
          border: 1px solid #e6e6e6;

          &.center {
            text-align: center;
          }

          .typographic {
            img {
              float: left;
              margin-right: 10px;
            }

            a {
              float: left;
              min-width: 80px;
              max-width: 250px;
              color: #e1251b;

              &.service {
                color: #666;
              }
            }

            span {
              float: left;
              min-width: 80px;
              max-width: 250px;
              text-align: center;
            }
          }
        }
      }
    }

    // 分页
    .choose-order {
      .pagination {
        margin: 38px 0;

        ul {
          font-size: 0;
          display: inline-block;

          li {
            display: inline-block;
            padding: 4px 9px;
            font-size: 14px;
            border: 1px solid #e0e9ee;

            &.prev,
            &.next {
              background-color: #fafafa;
            }

            &.prev {
              border-right-color: #28a3ef;
            }

            &.page {
              border-color: #28a3ef;
              border-left: 0;

              &.actived {
                background-color: #28a3ef;

                a {
                  color: #fff;
                }
              }
            }
          }
        }

        div {
          display: inline-block;
          font-size: 14px;
          color: #333;
        }
      }
    }
  }

  // 猜你喜欢
  .like {
    border: 1px solid #ddd;
    margin: 15px 20px;

    .kt {
      border-bottom: 1px solid #ddd;
      background: #f1f1f1;
      color: #666;
      margin: 0;
      padding: 12px;
      font-size: 15px;
    }

    .like-list {
      padding: 15px 11px;
      overflow: hidden;

      .likeItem {
        width: 25%;
        float: left;

        .p-img {
          text-align: left;

          img {
            width: 167px;
            height: 123px;
          }
        }

        .attr {
          padding: 0 15px;
        }

        .price {
          padding: 0 15px;
          font-size: 16px;
          color: #c81623;
          margin-bottom: 20px;
        }

        .commit {
          padding: 0 15px;
        }
      }
    }
  }
}
</style>